From 38c41e800d358d39cdac42cb1784dbd75e528213 Mon Sep 17 00:00:00 2001 From: "arun.sharma@intel.com[kaf24]" Date: Wed, 30 Mar 2005 08:07:28 +0000 Subject: [PATCH] bitkeeper revision 1.1236.1.158 (424a5e40njyl8M4wEhCb_M060CCf-w) [PATCH] libxc-x86-64-fixes.patch Build fixes for x86-64. Signed-off-by: Nitin Kamble Signed-off-by: Arun Sharma --- tools/libxc/xc_ptrace.c | 4 ++-- tools/libxc/xc_vmx_build.c | 8 ++++++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/tools/libxc/xc_ptrace.c b/tools/libxc/xc_ptrace.c index cac95cb7c4..f1d5db13f0 100644 --- a/tools/libxc/xc_ptrace.c +++ b/tools/libxc/xc_ptrace.c @@ -281,9 +281,9 @@ xc_ptrace(enum __ptrace_request request, pid_t pid, void *addr, void *data) SET_PT_REGS(pt, ctxt.cpu_ctxt); memcpy(data, &pt, sizeof(elf_gregset_t)); } else if (request == PTRACE_GETFPREGS) - memcpy(data, &ctxt.fpu_ctxt, sizeof(elf_fpregset_t)); + memcpy(data, &ctxt.fpu_ctxt, sizeof(ctxt.fpu_ctxt)); else /*if (request == PTRACE_GETFPXREGS)*/ - memcpy(data, &ctxt.fpu_ctxt, sizeof(elf_fpxregset_t)); + memcpy(data, &ctxt.fpu_ctxt, sizeof(ctxt.fpu_ctxt)); cr3 = ctxt.pt_base; regs_valid = 1; break; diff --git a/tools/libxc/xc_vmx_build.c b/tools/libxc/xc_vmx_build.c index 7b035d991c..8ef871c9c4 100644 --- a/tools/libxc/xc_vmx_build.c +++ b/tools/libxc/xc_vmx_build.c @@ -478,10 +478,18 @@ int vmx_identify(void) { int eax, ecx; +#ifdef __i386__ __asm__ __volatile__ ("pushl %%ebx; cpuid; popl %%ebx" : "=a" (eax), "=c" (ecx) : "0" (1) : "dx"); +#elif defined __x86_64__ + __asm__ __volatile__ ("pushq %%rbx; cpuid; popq %%rbx" + : "=a" (eax), "=c" (ecx) + : "0" (1) + : "dx"); +#endif + if (!(ecx & VMX_FEATURE_FLAG)) { return -1; } -- 2.30.2